Как правило, плохо составленное ТЗ, приводит к расходам со стороны исполнителя, разочарованию заказчика и в, худшем случае, бесконечным доработкам (на основе логики «так это же очевидно»). Одна маленькая «хотелка», которая не достаточно полно описана в ТЗ, может привести к тому, что придется достаточно серьезно переписывать уже имеющийся функционал, потратив на это ни один день. Поэтому, не секрет, что ТЗ нужно составлять как можно подробнее, описывая каждую мелочь, вплоть до того, что происходит при щелчке мышью.
Менеджер, который достаточно давно работает с битриксом, при общении, как правило, задает все необходимые вопросы, которые в дальнейшем используются для написания ТЗ.
Новым менеджерам, только знакомящимся с системой, достаточно трудно оценить, что из пожеланий заказчика требует серьезных доработок, что «только поставить галочку», какие вопросы задать в первую очередь и т.д. И, пока человек учится, написание ТЗ ложится либо на другого менеджера, либо на программиста. В связи с этим возникает необходимость гораздо чаще общаться с заказчиком через «вторые руки» (что не всегда возможно). И поэтому родилась идея написать список вопросов, которые нужно обязательно задавать заказчику (чтобы в дальнейшем новый менеджер мог максимально подробно описывать ТЗ интернет-магазина). Список вопросов пока экспериментальный и был написан буквально за полтора часа, но его доработка, как мне кажется, приведет к положительным результатам.
Товары и ценообразование.
1. Какая продукция будет представляться на сайте?
Ответ должен быть примерно такой: идея сайта – создание интернет-магазина обуви. На сайте будет представлена следующая продукция: обувь и сумки.
2. Какие существуют группы продукции, ограничен ли их уровень вложенности?
Пример. Группы будут следующие: мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки.
В свою очередь, детская обувь делится на группы обувь для девочек, обувь для мальчиков. Группы первого уровня (мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки) имеют описание и картинку при выводе в каталоге.
3. Какие характеристики имеются у этой продукции?
Каждый вид продукции, который отображается на сайте, может описываться нескольким характеристиками (или, по-другому, свойствами). Для обуви, например, такими характеристиками могут быть: Цвет верха, Высота каблука в мм, Коллекция, Сезон, Материал подкладки, Подошва, Колодка, Артикул и др. Для сумок – цвет, размер, вес.
Важно иметь полный список характеристик, а так же попытаться определить их тип. Например:
4. Будет ли несколько видов продукции?
Под несколькими видами продукции подразумеваются те, которые кардинально различаются в своих характеристиках. В примерах приведенных выше – это сумки и обувь. Если видов продукции действительно несколько, то необходимо дать описание для каждого (группы + характеристики). В таком случае не рекомендуется делать общий каталог, например, выводить товары с разными свойствами на одной странице в одном блоке, например сумка 1, ботинок 1, сумка 14, ботинок 15, сумка 13, ботинок 5. Лучше сделать две разные страницы (для ботинок и для сумок) или одну страницу, но с двумя областями: в одной находится сумки, в другой – ботинки.
5. Типы цен на сайте
Какие типы цены будут присутствовать на сайте? Какие пользователи могут видеть данные типы цен, какие пользователи могут покупать по данным типам цен? Зависит ли цена от количества приобретаемого товара? Включен ли НДС или другие налоги в цену товара, требуется ли включение.
Ответ должен быть примерно такой:
На сайте предполагается два типа цен:
- Розничная цена. Заносится контент-менеджером в рублях, отображается на сайте в рублях. Доступна для просмотра розничным и оптовым пользователям. Покупать по данной цене могут только оптовые пользователи.
- Оптовая цена. Заносится контент-менеджером в евро, отображается на сайте в рублях. Доступна для просмотра и покупки только оптовым пользователям.
НДС включен в цену для всех товаров, дополнительного включения не требуется. Цены от количества приобретаемого товара не зависят.
6. Зависимость цены от характеристик товара (Торговые предложения, SKU)
Один из очень важных моментов при проектировании каталога – наличие у товаров товарных предложений. Т.е., например, одна и та же модель обуви может иметь размеры [35,36,37,38] и цвета [красный, зеленый, синий]. Такую модель можно положить в корзину с любым размером и цветом. Особенно важно, когда цена у таких модификаций различается.
Например, товар_1 имеет размеры 35,36, цвета – зеленый и красный. Таблица цен выглядит следующим образом:
товар_1 35 красный 100 рублей
товар_1 35 зеленый 101 рубль
товар_1 36 красный 102 рубля
товар_1 36 зеленый 103 рубля
Каждая строка данной таблицы – отдельное предложение (SKU).
7. Остатки
Нужно ли вести учет и показ остатков для каждого товара (или его предложений)? Под учетом подразумевается то, что при оформлении заказа на сайте, его количество уменьшается и при достижении 0 товар заказать нельзя. Стоит заметить, что учет остатков на различных складах – достаточно нетиповая задача.
8. Скидки на заказ, скидки по купонам, фиксированные скидки (в процентах или конкретная сумма)
Каковая скидочная политика? Есть ли скидки на заказ? Есть ли скидки по купонам? Если ли скидки для каких-то групп пользователей (Например, оптовые vip). Есть ли накопительная скидка?
Пример ответа:
В компании существуют следующие скидки на заказ:
При заказе от 30000 – 5%
При заказе от 45000 – 10%
Кроме того, существуют купоны скидок, которые должны давать скидку в 5%,10%,15%. Купоны на скидку 15% - одноразовые (действуют только при одном заказе).
9. Фильтр.
Если в каталоге нужен фильтр, необходимо его полное описание. Например, фильтр содержит следующие поля:
Артикул (могут ввести любой артикул в текстовое поле)
Сезон (могут выбрать с помощью флажков один или несколько сезонов, если ничего не выбрано, по умолчанию считается что выбраны все сезоны)
Размер (можно выбрать только один, если ничего не выбрано, считается, что выбраны все размеры)
10. «Сортировка» и «выводить по»
Очень часть в пожелания входит возможность выбора пользователем направления сортировки и количество выводимых товаров при постраничной навигации. Если это имеет место быть, необходимо подробное описание.
Например, в каталоге возможна сортировка по названию и по дате добавления (сортировку можно выбрать как по возрастанию, так и по убыванию). Сортировка сохранятся на странице каталога, но при уходе со страницы происходит сбрасывание. Выводить по: 10,15,20
11. Интеграции. Требуются ли интеграции с какими либо системами? Если требуется интеграция с 1С, нужно учитывать что:
a. Штатно: Минимальная версия для УТ - 10.3.7.9
b. Штатно: Инициация обмена происходит всегда со стороны 1С
c. Штатно: Возможна выгрузка каталога из 1С на сайт (но не наоборот). При этом очень желательно чтобы структура в 1С соответствовала будущей структуре каталога на сайте
d. Штатно: Возможен обмен заказами, но учет ведется только тех заказов, которые были сделаны на сайте
12. Добавление в корзину. Стандартно одновременно можно положить только один товар в корзину. Если требуется класть несколько товаров, класть товары без перезагрузки страницы, возвращать результат добавления, то все нужно подробно описать.
Корзина и оформление заказа.
Процедура оформления заказа в битрикс следующая:
1. товар кладется в корзину.
2. при переходе в корзину можно удалить имеющиеся товары или изменить количество, ввести купон на скидку.
3. При нажатии кнопки «Оформить заказ» если пользователь не авторизирован – предлагается авторизоваться или зарегистрироваться. При этом регистрация пользователя обязательна.
4. выбирается тип плательщика (например, физическое/юридическое лицо)
5. в зависимости от типа плательщика заполняются свойства, например, для физического лица заполняется ФИО, для юридического – название организации. Некоторые из этих свойств могут входить в профиль (будут заполнены при следующем заказе). Для каждого плательщика обязательно присутствует свойство «местоположение», которое состоит из выбора страны и города.
6. Выбирается тип доставки (зависит от выбранного местоположения)
7. Выбирается способ оплаты
8. Заказ подтверждается
Такая процедура оформления заказа логична и хорошо продумана, поэтому если заказчик хочет её изменить – лучше отговорить от этого. Например,
заказчик не хочет чтобы пользователь вводил местоположение, тогда:
Сайт.
1. Общая структура сайта
Описать общую структуру сайта: расположение меню, пункты меню, страницы, детальное описание каждой страницы и функционала, расположенного на нем.
Очень краткий пример (который должен быть расписан с примерными картинками минимум страниц на 15 для простого сайта):
В верхней части (вот тут) располагается меню, которое включает в себя пункты: каталог, магазины, покупателям, о компании, контакты. Меню выпадающее, содержит подпункты одного уровня:
Каталог: мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки. …
Страница каталога: содержит меню каталога (вот тут), которое выводится из разделов. Содержит фильтр, постраничную навигацию, список позиций каталога.
Страница магазинов: содержит список всех магазинов в формате: название магазина, картинка. Так же все магазины отображаются на общей Yandex-карте.
2. Количество языковых версий сайта
Сколько языковых версий сайта должно быть. Каким образом отображаются: папкой или для каждой языковой версии сайта существует свой домен? Нужно ли разделять данные по сайтам: отдельное ведение интернет-магазина, статистики, валют, рекламы.
3. Группы пользователей и права доступа
Какие существуют группы пользователей? Стандартными и обязательными являются две группы: «Администраторы» и «Незарегистрированные». Какие ограничения применяются для каждой группы
Дополнительный функционал.
Если требуется какой-либо дополнительный функционал: сопутствующие товары, «вы так же смотрели», кнопки «мне нравится» вконтакте и фейсбук, необходимо описать его, как можно более подробно. Как действует, на каких страницах размещается и т.д.
Менеджер, который достаточно давно работает с битриксом, при общении, как правило, задает все необходимые вопросы, которые в дальнейшем используются для написания ТЗ.
Новым менеджерам, только знакомящимся с системой, достаточно трудно оценить, что из пожеланий заказчика требует серьезных доработок, что «только поставить галочку», какие вопросы задать в первую очередь и т.д. И, пока человек учится, написание ТЗ ложится либо на другого менеджера, либо на программиста. В связи с этим возникает необходимость гораздо чаще общаться с заказчиком через «вторые руки» (что не всегда возможно). И поэтому родилась идея написать список вопросов, которые нужно обязательно задавать заказчику (чтобы в дальнейшем новый менеджер мог максимально подробно описывать ТЗ интернет-магазина). Список вопросов пока экспериментальный и был написан буквально за полтора часа, но его доработка, как мне кажется, приведет к положительным результатам.
Товары и ценообразование.
1. Какая продукция будет представляться на сайте?
Ответ должен быть примерно такой: идея сайта – создание интернет-магазина обуви. На сайте будет представлена следующая продукция: обувь и сумки.
2. Какие существуют группы продукции, ограничен ли их уровень вложенности?
Пример. Группы будут следующие: мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки.
В свою очередь, детская обувь делится на группы обувь для девочек, обувь для мальчиков. Группы первого уровня (мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки) имеют описание и картинку при выводе в каталоге.
3. Какие характеристики имеются у этой продукции?
Каждый вид продукции, который отображается на сайте, может описываться нескольким характеристиками (или, по-другому, свойствами). Для обуви, например, такими характеристиками могут быть: Цвет верха, Высота каблука в мм, Коллекция, Сезон, Материал подкладки, Подошва, Колодка, Артикул и др. Для сумок – цвет, размер, вес.
Важно иметь полный список характеристик, а так же попытаться определить их тип. Например:
- Свойство «Сезон». Это список. Включает в себя 4 элемента: Всесезонный, Деми, Зима, Лето. Меняться не будет (или будет, но редко), возможности редактирования контент-менеджером не требуется (только выбор при занесении товара).
- Свойство «Каблук высота, мм» - целое число
- Свойство «Артикул» - строка
- Свойство «Бренд» - список брендов, количество брендов будет постоянно пополняться контент-менеджером. У каждой бренда имеется описание, картинка. Имеется отдельная страница брендов
4. Будет ли несколько видов продукции?
Под несколькими видами продукции подразумеваются те, которые кардинально различаются в своих характеристиках. В примерах приведенных выше – это сумки и обувь. Если видов продукции действительно несколько, то необходимо дать описание для каждого (группы + характеристики). В таком случае не рекомендуется делать общий каталог, например, выводить товары с разными свойствами на одной странице в одном блоке, например сумка 1, ботинок 1, сумка 14, ботинок 15, сумка 13, ботинок 5. Лучше сделать две разные страницы (для ботинок и для сумок) или одну страницу, но с двумя областями: в одной находится сумки, в другой – ботинки.
5. Типы цен на сайте
Какие типы цены будут присутствовать на сайте? Какие пользователи могут видеть данные типы цен, какие пользователи могут покупать по данным типам цен? Зависит ли цена от количества приобретаемого товара? Включен ли НДС или другие налоги в цену товара, требуется ли включение.
Ответ должен быть примерно такой:
На сайте предполагается два типа цен:
- Розничная цена. Заносится контент-менеджером в рублях, отображается на сайте в рублях. Доступна для просмотра розничным и оптовым пользователям. Покупать по данной цене могут только оптовые пользователи.
- Оптовая цена. Заносится контент-менеджером в евро, отображается на сайте в рублях. Доступна для просмотра и покупки только оптовым пользователям.
НДС включен в цену для всех товаров, дополнительного включения не требуется. Цены от количества приобретаемого товара не зависят.
6. Зависимость цены от характеристик товара (Торговые предложения, SKU)
Один из очень важных моментов при проектировании каталога – наличие у товаров товарных предложений. Т.е., например, одна и та же модель обуви может иметь размеры [35,36,37,38] и цвета [красный, зеленый, синий]. Такую модель можно положить в корзину с любым размером и цветом. Особенно важно, когда цена у таких модификаций различается.
Например, товар_1 имеет размеры 35,36, цвета – зеленый и красный. Таблица цен выглядит следующим образом:
товар_1 35 красный 100 рублей
товар_1 35 зеленый 101 рубль
товар_1 36 красный 102 рубля
товар_1 36 зеленый 103 рубля
Каждая строка данной таблицы – отдельное предложение (SKU).
7. Остатки
Нужно ли вести учет и показ остатков для каждого товара (или его предложений)? Под учетом подразумевается то, что при оформлении заказа на сайте, его количество уменьшается и при достижении 0 товар заказать нельзя. Стоит заметить, что учет остатков на различных складах – достаточно нетиповая задача.
8. Скидки на заказ, скидки по купонам, фиксированные скидки (в процентах или конкретная сумма)
Каковая скидочная политика? Есть ли скидки на заказ? Есть ли скидки по купонам? Если ли скидки для каких-то групп пользователей (Например, оптовые vip). Есть ли накопительная скидка?
Пример ответа:
В компании существуют следующие скидки на заказ:
При заказе от 30000 – 5%
При заказе от 45000 – 10%
Кроме того, существуют купоны скидок, которые должны давать скидку в 5%,10%,15%. Купоны на скидку 15% - одноразовые (действуют только при одном заказе).
9. Фильтр.
Если в каталоге нужен фильтр, необходимо его полное описание. Например, фильтр содержит следующие поля:
Артикул (могут ввести любой артикул в текстовое поле)
Сезон (могут выбрать с помощью флажков один или несколько сезонов, если ничего не выбрано, по умолчанию считается что выбраны все сезоны)
Размер (можно выбрать только один, если ничего не выбрано, считается, что выбраны все размеры)
10. «Сортировка» и «выводить по»
Очень часть в пожелания входит возможность выбора пользователем направления сортировки и количество выводимых товаров при постраничной навигации. Если это имеет место быть, необходимо подробное описание.
Например, в каталоге возможна сортировка по названию и по дате добавления (сортировку можно выбрать как по возрастанию, так и по убыванию). Сортировка сохранятся на странице каталога, но при уходе со страницы происходит сбрасывание. Выводить по: 10,15,20
11. Интеграции. Требуются ли интеграции с какими либо системами? Если требуется интеграция с 1С, нужно учитывать что:
a. Штатно: Минимальная версия для УТ - 10.3.7.9
b. Штатно: Инициация обмена происходит всегда со стороны 1С
c. Штатно: Возможна выгрузка каталога из 1С на сайт (но не наоборот). При этом очень желательно чтобы структура в 1С соответствовала будущей структуре каталога на сайте
d. Штатно: Возможен обмен заказами, но учет ведется только тех заказов, которые были сделаны на сайте
12. Добавление в корзину. Стандартно одновременно можно положить только один товар в корзину. Если требуется класть несколько товаров, класть товары без перезагрузки страницы, возвращать результат добавления, то все нужно подробно описать.
Корзина и оформление заказа.
Процедура оформления заказа в битрикс следующая:
1. товар кладется в корзину.
2. при переходе в корзину можно удалить имеющиеся товары или изменить количество, ввести купон на скидку.
3. При нажатии кнопки «Оформить заказ» если пользователь не авторизирован – предлагается авторизоваться или зарегистрироваться. При этом регистрация пользователя обязательна.
4. выбирается тип плательщика (например, физическое/юридическое лицо)
5. в зависимости от типа плательщика заполняются свойства, например, для физического лица заполняется ФИО, для юридического – название организации. Некоторые из этих свойств могут входить в профиль (будут заполнены при следующем заказе). Для каждого плательщика обязательно присутствует свойство «местоположение», которое состоит из выбора страны и города.
6. Выбирается тип доставки (зависит от выбранного местоположения)
7. Выбирается способ оплаты
8. Заказ подтверждается
Такая процедура оформления заказа логична и хорошо продумана, поэтому если заказчик хочет её изменить – лучше отговорить от этого. Например,
заказчик не хочет чтобы пользователь вводил местоположение, тогда:
- требуется кастомизация компонента для исключения фильтра способов доставки по местоположения => потеря обновлений этого компонента
- пользователь сможет выбрать доставку курьером за 200 рублей из Москвы в Хабаровск
- Встроенная доставка EMS использует это поле для рассчета стоимости. Если отказаться от него, то придется дорабатывать функционал данной доставки.
Сайт.
1. Общая структура сайта
Описать общую структуру сайта: расположение меню, пункты меню, страницы, детальное описание каждой страницы и функционала, расположенного на нем.
Очень краткий пример (который должен быть расписан с примерными картинками минимум страниц на 15 для простого сайта):
В верхней части (вот тут) располагается меню, которое включает в себя пункты: каталог, магазины, покупателям, о компании, контакты. Меню выпадающее, содержит подпункты одного уровня:
Каталог: мужская обувь, женская обувь, детская обувь, мужские сумки, женские сумки. …
Страница каталога: содержит меню каталога (вот тут), которое выводится из разделов. Содержит фильтр, постраничную навигацию, список позиций каталога.
Страница магазинов: содержит список всех магазинов в формате: название магазина, картинка. Так же все магазины отображаются на общей Yandex-карте.
2. Количество языковых версий сайта
Сколько языковых версий сайта должно быть. Каким образом отображаются: папкой или для каждой языковой версии сайта существует свой домен? Нужно ли разделять данные по сайтам: отдельное ведение интернет-магазина, статистики, валют, рекламы.
3. Группы пользователей и права доступа
Какие существуют группы пользователей? Стандартными и обязательными являются две группы: «Администраторы» и «Незарегистрированные». Какие ограничения применяются для каждой группы
Дополнительный функционал.
Если требуется какой-либо дополнительный функционал: сопутствующие товары, «вы так же смотрели», кнопки «мне нравится» вконтакте и фейсбук, необходимо описать его, как можно более подробно. Как действует, на каких страницах размещается и т.д.